Anyro

By Adam Nybäck

Time to Leave Drupal

So I haven’t done much on this site for a long time. It’s mostly because I think of it as my company website and the things I want to write are not necessarily related to my company. On the other hand it’s a one man company, so anything I write is kind of personal. Mostly when I feel like writing something these days I just go to Facebook or Twitter (and occasionally to Google+).

Last weekend I was looking for ways to prevent spam on websites and the obvious answer for Drupal is usually Mollom. However, it’s only free for non-commercial use so I looked for alternatives and found Botcha. The reason for having spam protection was for another site running Drupal 7 so I thought this would be a good opportunity to upgrade anyro.se too (from Drupal 6) and try Botcha here by enabling comments again. Knowing upgrading could be a pain I was happy to find that Drush supports upgrading. After struggling with this for a few hours I ran into some “access denied” issue that didn’t have any obvious solution.

Having heard many friends switching to Jekyll, I think I’m going to do the same, possibly using Octopress and GitHub Pages too. This feels like a step in the right direction – no PHP, no databases, no security issues/updates, no headache.

iZettle Turns iPhone Into an EMV Terminal for Everyone

Swedish iZettle just launched their website describing the iZettle chip reader that turns an iPhone into an EMV terminal that can be used by merchants as well as anyone who has something to sell.

A video on the website describes the process where you have the reader connected to the bottom of the iPhone. The amount is entered, the card is inserted, the amount is authorized online and finally the customer signs using the touch screen and optionally receives a receipt by e-mail.

Security seems to be a top priority according to the website: “iZettle meets all the requirements of the card payment industry. We are EMV approved and comply with PCI-DSS regulations. No sensitive data is ever stored on the mobile device, and all data traffic is encrypted.”

The product/service will be launched in Sweden in June this year and people who are interested can sign up for an invite.

Nuvarande uppdrag

Sedan ett par månader är jag tillbaka på Payzone där jag jobbar deltid med en förstudie som nu går över i utveckling.

Parallellt med det utvecklar jag eget till Google Android där jag nu har sex stycken appar publicerade på Market – tre spel och tre svenska reseappar.

Med andra ord Java-utveckling för hela slanten, vilket jag fortfarande trivs ganska bra med.

Dags för nya uppdrag och utmaningar

Mitt uppdrag på Payzone börjar närma sig sitt slut för den här gången så nu letar jag efter nya utmaningar. Min erfarenhet passar bäst till expertuppdrag inom kortbranschen, men jag är även intresserad av uppdrag relaterade till Drupal och Android.

Tveka inte att kontakta mig om du känner till något som kunde passa.

Röksimulering i HTML5

Igår var jag med i en “HTML5 study group” för att se vad den nya standarden har att erbjuda. Inte helt oväntat fastnade jag för Canvas-taggen och som ett experiment provade jag att göra en enkel röksimulator.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<canvas id="canvas" width="150" height="150"></canvas>
<script type="text/javascript">
var ctx;
particles = [];

var canvas = document.getElementById('canvas');
if (canvas.getContext){
ctx = canvas.getContext('2d');
//Set Refresh Rate  
setInterval(draw, 40);
}

// Smoke particle class
function Particle() {

// Initial y less than 0 to trigger initiation of all variables
this.y = -1;

this.reset = function() {

    // Position
    this.x = 75.0;
    this.y = 150.0;

    // Speed
    this.dx = Math.random() * 1.0 - 0.5;
    this.dy = Math.random() * 0.2 + 1.8;
    this.dradius = Math.random() * 0.1 + 0.5;

    this.radius = 10.0;

    // Transparency
    this.alpha = 0.15;
}

this.render = function() {

    if (this.y < 0) {
        this.reset();
    }

    // Change position, radius and transparency of the particle
    this.x += this.dx;
    this.y -= this.dy;
    this.radius += this.dradius;
    this.alpha *= 0.98;

    // Create circular gradient, white in the middle and transparent at the edge
    var radgrad = ctx.createRadialGradient(this.x, this.y, 0, this.x, this.y, this.radius);
    radgrad.addColorStop(0, 'rgba(255, 255, 255, ' + this.alpha + ')');
    radgrad.addColorStop(1, 'rgba(255, 255, 255, 0)');
    ctx.fillStyle = radgrad;

    // Draw the particle
    ctx.fillRect(this.x - this.radius, this.y - this.radius, this.radius * 2, this.radius * 2);
}
}

function draw() {
// Background
ctx.fillStyle = "rgb(40, 40, 40)";
ctx.fillRect(0, 0, 200, 200);

// Create new particles until we have 75
if (particles.length < 75) {
    particles.push(new Particle());
}

// Draw the particles on the canvas
for (var i = 0; i < particles.length; ++i) {
     particles[i].render();
}
}
</script>

PayPal i mobilen

Drömmer du om det kontantlösa samhället? Tror du fortfarande att kortbetalning är lösningen? Dags att tänka om.

Komma igång med Android-utveckling

Uppdatering: Den här guiden är inte up-to-date, så googla efter någon annan eller gå till http://developer.android.com/develop

För att börja utveckla för Android behöver du inte så mycket förberedelser. Du behöver inte ens en telefon, eftersom det finns en emulator. Det är dock bra om du kan engelska så slipper du använda Google Translate. Så här kommer du igång:

0. Titta och läs medan du laddar ned Du kommer behöva ladda ned en del filer i steg 1 nedan, så under tiden de laddar så kan du kolla några introduktionssidor om du vill. Annars kan du vänta med det till senare.

1. Sätta upp utvecklingsmiljön Följ instruktionerna på http://developer.android.com/sdk/index.html

Några tips:

  • Jag rekommenderar att du gör allt som beskrivs där. Om du inte vill använda Eclipse, så prova det i alla fall. Det blir enklare att följa instruktionerna då och du blir en erfarenhet rikare.
  • Börja med Android 1.5. Du kan lägga till andra versioner senare om det skulle behövas.
  • När du sätter upp emulatorn, kom ihåg att lägga till de egenskaper du vill att den virtuella telefonen ska ha, t ex accelerometer eller GPS.

2. Prova på Hello World

3. Prova några Layouter och Views som du tycker ser intressanta ut.

4. Gå igenom Notepad Tutorial Här lär du dig många av de grundläggande funktionerna som behövs i nästan alla applikationer och hur man gör det “the Android way”. Om du redan vet vilken applikation du ska utveckla, så kan du göra det parallellt och lägga till sånt som du tycker behövs.

5. Nästa steg Nu är det upp till dig hur du vill gå vidare :–) En del förslag hittar du här.

6. Problem? Använd google eller sökrutan på http://developer.android.com. Fler ställen där du kan få hjälp: http://www.swedroid.se/forum http://developer.android.com/resources/community-groups.html

Lycka till!

Grattis Slashat!

Ett helt år har gått sedan första avsnittet av podcasten Slashat och jag vill därför passa på att tacka för att varje vecka få drygt en timme av ren glädje.

För er som inte känner till detta så är Slashat Sveriges (och kanske världens) bästa podcast för oss som gillar datorer, internet och teknik i allmänhet. Tommie och Jezper, keep up the good work!

Anyro.se på Google Buzz

Google föreslog automatiskt att jag kunde koppla anyro.se till Buzz. Så från och med nu kommer allt jag skriver här även hamna på mitt Buzz-konto. Smidigt.

Vet inte hur det fungerar, men antar att det går via RSS. Skulle förvåna mig om kommentarerna synkas också (i båda riktningarna).

Skulle egentligen vilja ha det kopplat till Buzz på mitt Google Apps-konto, men måste tydligen vänta på Google lite till för det.